Views [dbo].[vGiftHistory]
Properties
PropertyValue
ANSI Nulls OnYes
Quoted Identifier OnYes
Created3:38:19 PM Friday, January 07, 2011
Last Modified5:05:18 AM Monday, January 30, 2012
Columns
Name
OriginalTransaction
Fund
Campaign
Appeal
CalendarYear
FiscalYear
ID
TransactionDate
DateReceived
GiftType
SolicitorID
Amount
Received
Balance
SoftCredit
SoftCreditDonorID
TotalCredits
MemorialNameText
MemorialTributeType
MemorialTributeMessage
TributeNotificationContactID
SQL Script




CREATE VIEW [dbo].[vGiftHistory] AS
     SELECT  d.[OriginalTransaction],
                 d.[Fund],
                 d.[Campaign],
                 d.[Appeal],
                 DATEPART(year,d.[TransactionDate]) AS CalendarYear,  
                 d.[FiscalYear],
                 d.[ID],
                 d.[TransactionDate],
                 d.[DateReceived],     
                 CASE
                       WHEN (SELECT COUNT(v.OriginalTransaction) from vGiftHistoryBase v where d.OriginalTransaction = v.OriginalTransaction and d.ID = v.ID) > 1 then 'Split-' + d.GiftType
                       ELSE d.GiftType END AS GiftType,
                 d.[SolicitorID],  
                 CASE
                       WHEN d.[GiftType] = 'Soft Credit' THEN 0
                       ELSE d.[Amount] END AS Amount,            
                 CASE
                       WHEN d.[GiftType] = 'Soft Credit' THEN 0
                       ELSE SUM(ISNULL(g.[Amount],0)) END AS Received,
                 (d.Amount-(CASE
                       WHEN d.[GiftType] = 'Soft Credit' THEN 0
                       ELSE SUM(ISNULL(g.[Amount],0)) END)) AS Balance,
                  d.[SoftCreditAmount] AS SoftCredit,
                  d.[SoftCreditDonorID],
                 (d.Amount + d.[SoftCreditAmount]) AS TotalCredits,
                  g.MemorialNameText,
                  g.MemorialTributeType,
                  g.MemorialTributeMessage,
                  g.TributeNotificationContactID                           
       FROM [dbo].[vGiftHistoryBase] d
              LEFT OUTER JOIN [dbo].[vGiftsReceivedBase] g ON d.[OriginalTransaction] = g.[OriginalTransaction] and d.[Fund] = g.[Fund]
    GROUP BY  d.[OriginalTransaction],
             d.[SourceSystem],
             d.[Fund],
             d.[Campaign],                 
             d.[Appeal],            
             d.[PaymentType],            
             d.[TransactionDate],
             d.[FiscalYear],
             d.[DateReceived],                 
             d.[ID],
             d.[GiftType],
             d.[SolicitorID],
             d.[Amount],
             d.[SoftCreditAmount],
             d.[SoftCreditDonorID],
             g.MemorialNameText,
             g.MemorialTributeType,
             g.MemorialTributeMessage,
             g.TributeNotificationContactID







GO
Uses